Many integrated circuits include flip-flops or other data storage elements to help carry out various sequential logic functions. It is important for correct functional operation of these circuits that storage elements be loaded properly. Poor signal integrity can affect loading of storage elements so that incorrect data may be stored. Therefore, it is desirable that signal integrity be monitored for any problems.
One time period when monitoring of signal integrity is important, for example, is when the power to an integrated circuit is first turned on, since it is critical for proper operation of a circuit that the storage elements be correctly loaded in order to assume a specified initial state. If there is a problem in the start-up conditions, it is possible that incorrect data may stored and the flip-flops may start out in the wrong state, which might cause errors in device operation. It is often during this particular power-up period, when the signal integrity may be most susceptible to problems, since signal lines will not necessarily have yet attained normal voltage levels. Of course, signal integrity is also important at other times during device operation to assure proper loading of the circuit's storage elements.
Signal conditions that might produce errors include noise or fluctuation on any of the clock and reset signal lines, on the data input lines, or on the power supply voltage line. Such conditions may cause the storage elements to load prematurely before the data inputs have reached their proper voltage levels, for example while the power supply lines are still powering up. A noisy reset signal line might cause the storage elements to reload after the data inputs have assumed a different signal level after the loading is supposed to have been completed. Fluctuations on the data input lines from which the flip-flops are to be loaded, resulting in signals that are not clearly in their correct logic state.
It is often difficult to know whether data has been loaded correctly, since functional errors in device operation can sometimes be rather subtle. It is desirable to be able to detect problems with signal integrity, so that if poor load conditions occur, the loading of the data can be repeated.
An objective of the present invention is to provide a signal integrity checking circuit that flags commonly occurring signal integrity problems, including noise or fluctuations on the signal lines, during loading of an integrated circuit's storage elements.